package com.cencat.user.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

/**
 * 用户登出DTO
 * @author cencat
 * @since 2024-01-01
 */
@Data
@Schema(description = "用户登出请求")
public class LogoutDTO {

    @NotBlank(message = "访问令牌不能为空")
    @Schema(description = "访问令牌", required = true)
    private String accessToken;

    @Schema(description = "刷新令牌")
    private String refreshToken;

    @Schema(description = "用户ID", example = "1")
    private Long userId;

    @Schema(description = "登出原因", example = "用户主动登出")
    private String logoutReason;

    @Schema(description = "客户端IP地址", example = "192.168.1.1")
    private String clientIp;

    @Schema(description = "租户ID", example = "1")
    private Long tenantId;
}